﻿using System.Collections.Generic;
using System.Threading.Tasks;
using BCEntity.TMS.Driver.DriverExamine;

namespace BCData.TMS.Driver.DriverExamine
{
    public interface IDriverExamineTestQuestionAnswerData
    {
        /// <summary>
        /// 新增司机考试试题答案
        /// </summary>
        /// <param name="entity">司机考试试题答案</param>
        /// <returns></returns>
        Task<int> InsertAsync(DriverExamineTestQuestionAnswerEntity entity);

        /// <summary>
        /// 获取考试题答案
        /// </summary>
        /// <param name="paperId">试卷Id</param>
        /// <returns></returns>
        Task<IEnumerable<DriverExamineTestQuestionAnswerEntity>> GetDriverExamineTestQuestionAnswersByPaperId(long paperId);
        /// <summary>
        /// 获取最大的考试题编号
        /// </summary>
        /// <returns></returns>
        int GetMaxTestquestionNo();
        /// <summary>
        /// 获取考试题答案列表
        /// </summary>
        /// <param name="datumIds">学习资料Id列表</param>
        /// <returns></returns>
        Task<IEnumerable<DriverExamineTestQuestionAnswerEntity>> GetTestQuestionAnswerByDaturnAnswerIds(int[] datumIds);
        /// <summary>
        /// 批量删除考试题答案
        /// </summary>
        /// <param name="testquestionNos">考试题编号列表</param>
        /// <returns></returns>
        Task<int> DeleteByTestquestionNos(string[] testquestionNos);

        /// <summary>
        /// 考试题答案列表
        /// </summary>
        /// <param name="testquestionNos">考试题编号列表</param>
        /// <returns></returns>
        Task<IEnumerable<DriverExamineTestQuestionAnswerEntity>> GetDriverExamineTestQuestionAnswersByQuestionsNos(string[] testquestionNos);
    }
}
